package org.nterlearning.datamodel.catalog.model;

import com.liferay.portal.kernel.bean.AutoEscape;
import com.liferay.portal.kernel.exception.SystemException;
import com.liferay.portal.model.BaseModel;
import com.liferay.portal.model.CacheModel;
import com.liferay.portal.service.ServiceContext;

import com.liferay.portlet.expando.model.ExpandoBridge;

import java.io.Serializable;

import java.util.Date;
import java.util.Locale;
import java.util.Map;

/**
 * The base model interface for the Course service. Represents a row in the &quot;CATALOG_Course&quot; database table, with each column mapped to a property of this class.
 *
 * <p>
 * This interface and its corresponding implementation {@link org.nterlearning.datamodel.catalog.model.impl.CourseModelImpl} exist only as a container for the default property accessors generated by ServiceBuilder. Helper methods and all application logic should be put in {@link org.nterlearning.datamodel.catalog.model.impl.CourseImpl}.
 * </p>
 *
 * @author Brian Wing Shun Chan
 * @see Course
 * @see org.nterlearning.datamodel.catalog.model.impl.CourseImpl
 * @see org.nterlearning.datamodel.catalog.model.impl.CourseModelImpl
 * @generated
 */
public interface CourseModel extends BaseModel<Course> {
    /*
     * NOTE FOR DEVELOPERS:
     *
     * Never modify or reference this interface directly. All methods that expect a course model instance should use the {@link Course} interface instead.
     */

    /**
     * Returns the primary key of this course.
     *
     * @return the primary key of this course
     */
    public long getPrimaryKey();

    /**
     * Sets the primary key of this course.
     *
     * @param primaryKey the primary key of this course
     */
    public void setPrimaryKey(long primaryKey);

    /**
     * Returns the course ID of this course.
     *
     * @return the course ID of this course
     */
    public long getCourseId();

    /**
     * Sets the course ID of this course.
     *
     * @param courseId the course ID of this course
     */
    public void setCourseId(long courseId);

    /**
     * Returns the company ID of this course.
     *
     * @return the company ID of this course
     */
    public long getCompanyId();

    /**
     * Sets the company ID of this course.
     *
     * @param companyId the company ID of this course
     */
    public void setCompanyId(long companyId);

    /**
     * Returns the group ID of this course.
     *
     * @return the group ID of this course
     */
    public long getGroupId();

    /**
     * Sets the group ID of this course.
     *
     * @param groupId the group ID of this course
     */
    public void setGroupId(long groupId);

    /**
     * Returns the user ID of this course.
     *
     * @return the user ID of this course
     */
    public long getUserId();

    /**
     * Sets the user ID of this course.
     *
     * @param userId the user ID of this course
     */
    public void setUserId(long userId);

    /**
     * Returns the user uuid of this course.
     *
     * @return the user uuid of this course
     * @throws SystemException if a system exception occurred
     */
    public String getUserUuid() throws SystemException;

    /**
     * Sets the user uuid of this course.
     *
     * @param userUuid the user uuid of this course
     */
    public void setUserUuid(String userUuid);

    /**
     * Returns the feed reference ID of this course.
     *
     * @return the feed reference ID of this course
     */
    public long getFeedReferenceId();

    /**
     * Sets the feed reference ID of this course.
     *
     * @param feedReferenceId the feed reference ID of this course
     */
    public void setFeedReferenceId(long feedReferenceId);

    /**
     * Returns the href of this course.
     *
     * @return the href of this course
     */
    @AutoEscape
    public String getHref();

    /**
     * Sets the href of this course.
     *
     * @param href the href of this course
     */
    public void setHref(String href);

    /**
     * Returns the full text href of this course.
     *
     * @return the full text href of this course
     */
    @AutoEscape
    public String getFullTextHref();

    /**
     * Sets the full text href of this course.
     *
     * @param fullTextHref the full text href of this course
     */
    public void setFullTextHref(String fullTextHref);

    /**
     * Returns the course iri of this course.
     *
     * @return the course iri of this course
     */
    @AutoEscape
    public String getCourseIri();

    /**
     * Sets the course iri of this course.
     *
     * @param courseIri the course iri of this course
     */
    public void setCourseIri(String courseIri);

    /**
     * Returns the updated date of this course.
     *
     * @return the updated date of this course
     */
    public Date getUpdatedDate();

    /**
     * Sets the updated date of this course.
     *
     * @param updatedDate the updated date of this course
     */
    public void setUpdatedDate(Date updatedDate);

    /**
     * Returns the title of this course.
     *
     * @return the title of this course
     */
    public String getTitle();

    /**
     * Returns the localized title of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param locale the locale of the language
     * @return the localized title of this course
     */
    @AutoEscape
    public String getTitle(Locale locale);

    /**
     * Returns the localized title of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param locale the local of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized title of this course. If <code>useDefault</code> is <code>false</code> and no localization exists for the requested language, an empty string will be returned.
     */
    @AutoEscape
    public String getTitle(Locale locale, boolean useDefault);

    /**
     * Returns the localized title of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @return the localized title of this course
     */
    @AutoEscape
    public String getTitle(String languageId);

    /**
     * Returns the localized title of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized title of this course
     */
    @AutoEscape
    public String getTitle(String languageId, boolean useDefault);

    @AutoEscape
    public String getTitleCurrentLanguageId();

    @AutoEscape
    public String getTitleCurrentValue();

    /**
     * Returns a map of the locales and localized titles of this course.
     *
     * @return the locales and localized titles of this course
     */
    public Map<Locale, String> getTitleMap();

    /**
     * Sets the title of this course.
     *
     * @param title the title of this course
     */
    public void setTitle(String title);

    /**
     * Sets the localized title of this course in the language.
     *
     * @param title the localized title of this course
     * @param locale the locale of the language
     */
    public void setTitle(String title, Locale locale);

    /**
     * Sets the localized title of this course in the language, and sets the default locale.
     *
     * @param title the localized title of this course
     * @param locale the locale of the language
     * @param defaultLocale the default locale
     */
    public void setTitle(String title, Locale locale, Locale defaultLocale);

    public void setTitleCurrentLanguageId(String languageId);

    /**
     * Sets the localized titles of this course from the map of locales and localized titles.
     *
     * @param titleMap the locales and localized titles of this course
     */
    public void setTitleMap(Map<Locale, String> titleMap);

    /**
     * Sets the localized titles of this course from the map of locales and localized titles, and sets the default locale.
     *
     * @param titleMap the locales and localized titles of this course
     * @param defaultLocale the default locale
     */
    public void setTitleMap(Map<Locale, String> titleMap, Locale defaultLocale);

    /**
     * Returns the transcript abstract of this course.
     *
     * @return the transcript abstract of this course
     */
    public String getTranscriptAbstract();

    /**
     * Returns the localized transcript abstract of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param locale the locale of the language
     * @return the localized transcript abstract of this course
     */
    @AutoEscape
    public String getTranscriptAbstract(Locale locale);

    /**
     * Returns the localized transcript abstract of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param locale the local of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized transcript abstract of this course. If <code>useDefault</code> is <code>false</code> and no localization exists for the requested language, an empty string will be returned.
     */
    @AutoEscape
    public String getTranscriptAbstract(Locale locale, boolean useDefault);

    /**
     * Returns the localized transcript abstract of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @return the localized transcript abstract of this course
     */
    @AutoEscape
    public String getTranscriptAbstract(String languageId);

    /**
     * Returns the localized transcript abstract of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized transcript abstract of this course
     */
    @AutoEscape
    public String getTranscriptAbstract(String languageId, boolean useDefault);

    @AutoEscape
    public String getTranscriptAbstractCurrentLanguageId();

    @AutoEscape
    public String getTranscriptAbstractCurrentValue();

    /**
     * Returns a map of the locales and localized transcript abstracts of this course.
     *
     * @return the locales and localized transcript abstracts of this course
     */
    public Map<Locale, String> getTranscriptAbstractMap();

    /**
     * Sets the transcript abstract of this course.
     *
     * @param transcriptAbstract the transcript abstract of this course
     */
    public void setTranscriptAbstract(String transcriptAbstract);

    /**
     * Sets the localized transcript abstract of this course in the language.
     *
     * @param transcriptAbstract the localized transcript abstract of this course
     * @param locale the locale of the language
     */
    public void setTranscriptAbstract(String transcriptAbstract, Locale locale);

    /**
     * Sets the localized transcript abstract of this course in the language, and sets the default locale.
     *
     * @param transcriptAbstract the localized transcript abstract of this course
     * @param locale the locale of the language
     * @param defaultLocale the default locale
     */
    public void setTranscriptAbstract(String transcriptAbstract, Locale locale,
        Locale defaultLocale);

    public void setTranscriptAbstractCurrentLanguageId(String languageId);

    /**
     * Sets the localized transcript abstracts of this course from the map of locales and localized transcript abstracts.
     *
     * @param transcriptAbstractMap the locales and localized transcript abstracts of this course
     */
    public void setTranscriptAbstractMap(
        Map<Locale, String> transcriptAbstractMap);

    /**
     * Sets the localized transcript abstracts of this course from the map of locales and localized transcript abstracts, and sets the default locale.
     *
     * @param transcriptAbstractMap the locales and localized transcript abstracts of this course
     * @param defaultLocale the default locale
     */
    public void setTranscriptAbstractMap(
        Map<Locale, String> transcriptAbstractMap, Locale defaultLocale);

    /**
     * Returns the description of this course.
     *
     * @return the description of this course
     */
    public String getDescription();

    /**
     * Returns the localized description of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param locale the locale of the language
     * @return the localized description of this course
     */
    @AutoEscape
    public String getDescription(Locale locale);

    /**
     * Returns the localized description of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param locale the local of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized description of this course. If <code>useDefault</code> is <code>false</code> and no localization exists for the requested language, an empty string will be returned.
     */
    @AutoEscape
    public String getDescription(Locale locale, boolean useDefault);

    /**
     * Returns the localized description of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @return the localized description of this course
     */
    @AutoEscape
    public String getDescription(String languageId);

    /**
     * Returns the localized description of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized description of this course
     */
    @AutoEscape
    public String getDescription(String languageId, boolean useDefault);

    @AutoEscape
    public String getDescriptionCurrentLanguageId();

    @AutoEscape
    public String getDescriptionCurrentValue();

    /**
     * Returns a map of the locales and localized descriptions of this course.
     *
     * @return the locales and localized descriptions of this course
     */
    public Map<Locale, String> getDescriptionMap();

    /**
     * Sets the description of this course.
     *
     * @param description the description of this course
     */
    public void setDescription(String description);

    /**
     * Sets the localized description of this course in the language.
     *
     * @param description the localized description of this course
     * @param locale the locale of the language
     */
    public void setDescription(String description, Locale locale);

    /**
     * Sets the localized description of this course in the language, and sets the default locale.
     *
     * @param description the localized description of this course
     * @param locale the locale of the language
     * @param defaultLocale the default locale
     */
    public void setDescription(String description, Locale locale,
        Locale defaultLocale);

    public void setDescriptionCurrentLanguageId(String languageId);

    /**
     * Sets the localized descriptions of this course from the map of locales and localized descriptions.
     *
     * @param descriptionMap the locales and localized descriptions of this course
     */
    public void setDescriptionMap(Map<Locale, String> descriptionMap);

    /**
     * Sets the localized descriptions of this course from the map of locales and localized descriptions, and sets the default locale.
     *
     * @param descriptionMap the locales and localized descriptions of this course
     * @param defaultLocale the default locale
     */
    public void setDescriptionMap(Map<Locale, String> descriptionMap,
        Locale defaultLocale);

    /**
     * Returns the keywords of this course.
     *
     * @return the keywords of this course
     */
    public String getKeywords();

    /**
     * Returns the localized keywords of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param locale the locale of the language
     * @return the localized keywords of this course
     */
    @AutoEscape
    public String getKeywords(Locale locale);

    /**
     * Returns the localized keywords of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param locale the local of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized keywords of this course. If <code>useDefault</code> is <code>false</code> and no localization exists for the requested language, an empty string will be returned.
     */
    @AutoEscape
    public String getKeywords(Locale locale, boolean useDefault);

    /**
     * Returns the localized keywords of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @return the localized keywords of this course
     */
    @AutoEscape
    public String getKeywords(String languageId);

    /**
     * Returns the localized keywords of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized keywords of this course
     */
    @AutoEscape
    public String getKeywords(String languageId, boolean useDefault);

    @AutoEscape
    public String getKeywordsCurrentLanguageId();

    @AutoEscape
    public String getKeywordsCurrentValue();

    /**
     * Returns a map of the locales and localized keywordses of this course.
     *
     * @return the locales and localized keywordses of this course
     */
    public Map<Locale, String> getKeywordsMap();

    /**
     * Sets the keywords of this course.
     *
     * @param keywords the keywords of this course
     */
    public void setKeywords(String keywords);

    /**
     * Sets the localized keywords of this course in the language.
     *
     * @param keywords the localized keywords of this course
     * @param locale the locale of the language
     */
    public void setKeywords(String keywords, Locale locale);

    /**
     * Sets the localized keywords of this course in the language, and sets the default locale.
     *
     * @param keywords the localized keywords of this course
     * @param locale the locale of the language
     * @param defaultLocale the default locale
     */
    public void setKeywords(String keywords, Locale locale, Locale defaultLocale);

    public void setKeywordsCurrentLanguageId(String languageId);

    /**
     * Sets the localized keywordses of this course from the map of locales and localized keywordses.
     *
     * @param keywordsMap the locales and localized keywordses of this course
     */
    public void setKeywordsMap(Map<Locale, String> keywordsMap);

    /**
     * Sets the localized keywordses of this course from the map of locales and localized keywordses, and sets the default locale.
     *
     * @param keywordsMap the locales and localized keywordses of this course
     * @param defaultLocale the default locale
     */
    public void setKeywordsMap(Map<Locale, String> keywordsMap,
        Locale defaultLocale);

    /**
     * Returns the copyright of this course.
     *
     * @return the copyright of this course
     */
    public String getCopyright();

    /**
     * Returns the localized copyright of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param locale the locale of the language
     * @return the localized copyright of this course
     */
    @AutoEscape
    public String getCopyright(Locale locale);

    /**
     * Returns the localized copyright of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param locale the local of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized copyright of this course. If <code>useDefault</code> is <code>false</code> and no localization exists for the requested language, an empty string will be returned.
     */
    @AutoEscape
    public String getCopyright(Locale locale, boolean useDefault);

    /**
     * Returns the localized copyright of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @return the localized copyright of this course
     */
    @AutoEscape
    public String getCopyright(String languageId);

    /**
     * Returns the localized copyright of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized copyright of this course
     */
    @AutoEscape
    public String getCopyright(String languageId, boolean useDefault);

    @AutoEscape
    public String getCopyrightCurrentLanguageId();

    @AutoEscape
    public String getCopyrightCurrentValue();

    /**
     * Returns a map of the locales and localized copyrights of this course.
     *
     * @return the locales and localized copyrights of this course
     */
    public Map<Locale, String> getCopyrightMap();

    /**
     * Sets the copyright of this course.
     *
     * @param copyright the copyright of this course
     */
    public void setCopyright(String copyright);

    /**
     * Sets the localized copyright of this course in the language.
     *
     * @param copyright the localized copyright of this course
     * @param locale the locale of the language
     */
    public void setCopyright(String copyright, Locale locale);

    /**
     * Sets the localized copyright of this course in the language, and sets the default locale.
     *
     * @param copyright the localized copyright of this course
     * @param locale the locale of the language
     * @param defaultLocale the default locale
     */
    public void setCopyright(String copyright, Locale locale,
        Locale defaultLocale);

    public void setCopyrightCurrentLanguageId(String languageId);

    /**
     * Sets the localized copyrights of this course from the map of locales and localized copyrights.
     *
     * @param copyrightMap the locales and localized copyrights of this course
     */
    public void setCopyrightMap(Map<Locale, String> copyrightMap);

    /**
     * Sets the localized copyrights of this course from the map of locales and localized copyrights, and sets the default locale.
     *
     * @param copyrightMap the locales and localized copyrights of this course
     * @param defaultLocale the default locale
     */
    public void setCopyrightMap(Map<Locale, String> copyrightMap,
        Locale defaultLocale);

    /**
     * Returns the rating level of this course.
     *
     * @return the rating level of this course
     */
    public String getRatingLevel();

    /**
     * Returns the localized rating level of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param locale the locale of the language
     * @return the localized rating level of this course
     */
    @AutoEscape
    public String getRatingLevel(Locale locale);

    /**
     * Returns the localized rating level of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param locale the local of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized rating level of this course. If <code>useDefault</code> is <code>false</code> and no localization exists for the requested language, an empty string will be returned.
     */
    @AutoEscape
    public String getRatingLevel(Locale locale, boolean useDefault);

    /**
     * Returns the localized rating level of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @return the localized rating level of this course
     */
    @AutoEscape
    public String getRatingLevel(String languageId);

    /**
     * Returns the localized rating level of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized rating level of this course
     */
    @AutoEscape
    public String getRatingLevel(String languageId, boolean useDefault);

    @AutoEscape
    public String getRatingLevelCurrentLanguageId();

    @AutoEscape
    public String getRatingLevelCurrentValue();

    /**
     * Returns a map of the locales and localized rating levels of this course.
     *
     * @return the locales and localized rating levels of this course
     */
    public Map<Locale, String> getRatingLevelMap();

    /**
     * Sets the rating level of this course.
     *
     * @param ratingLevel the rating level of this course
     */
    public void setRatingLevel(String ratingLevel);

    /**
     * Sets the localized rating level of this course in the language.
     *
     * @param ratingLevel the localized rating level of this course
     * @param locale the locale of the language
     */
    public void setRatingLevel(String ratingLevel, Locale locale);

    /**
     * Sets the localized rating level of this course in the language, and sets the default locale.
     *
     * @param ratingLevel the localized rating level of this course
     * @param locale the locale of the language
     * @param defaultLocale the default locale
     */
    public void setRatingLevel(String ratingLevel, Locale locale,
        Locale defaultLocale);

    public void setRatingLevelCurrentLanguageId(String languageId);

    /**
     * Sets the localized rating levels of this course from the map of locales and localized rating levels.
     *
     * @param ratingLevelMap the locales and localized rating levels of this course
     */
    public void setRatingLevelMap(Map<Locale, String> ratingLevelMap);

    /**
     * Sets the localized rating levels of this course from the map of locales and localized rating levels, and sets the default locale.
     *
     * @param ratingLevelMap the locales and localized rating levels of this course
     * @param defaultLocale the default locale
     */
    public void setRatingLevelMap(Map<Locale, String> ratingLevelMap,
        Locale defaultLocale);

    /**
     * Returns the rating reason of this course.
     *
     * @return the rating reason of this course
     */
    public String getRatingReason();

    /**
     * Returns the localized rating reason of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param locale the locale of the language
     * @return the localized rating reason of this course
     */
    @AutoEscape
    public String getRatingReason(Locale locale);

    /**
     * Returns the localized rating reason of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param locale the local of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized rating reason of this course. If <code>useDefault</code> is <code>false</code> and no localization exists for the requested language, an empty string will be returned.
     */
    @AutoEscape
    public String getRatingReason(Locale locale, boolean useDefault);

    /**
     * Returns the localized rating reason of this course in the language. Uses the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @return the localized rating reason of this course
     */
    @AutoEscape
    public String getRatingReason(String languageId);

    /**
     * Returns the localized rating reason of this course in the language, optionally using the default language if no localization exists for the requested language.
     *
     * @param languageId the ID of the language
     * @param useDefault whether to use the default language if no localization exists for the requested language
     * @return the localized rating reason of this course
     */
    @AutoEscape
    public String getRatingReason(String languageId, boolean useDefault);

    @AutoEscape
    public String getRatingReasonCurrentLanguageId();

    @AutoEscape
    public String getRatingReasonCurrentValue();

    /**
     * Returns a map of the locales and localized rating reasons of this course.
     *
     * @return the locales and localized rating reasons of this course
     */
    public Map<Locale, String> getRatingReasonMap();

    /**
     * Sets the rating reason of this course.
     *
     * @param ratingReason the rating reason of this course
     */
    public void setRatingReason(String ratingReason);

    /**
     * Sets the localized rating reason of this course in the language.
     *
     * @param ratingReason the localized rating reason of this course
     * @param locale the locale of the language
     */
    public void setRatingReason(String ratingReason, Locale locale);

    /**
     * Sets the localized rating reason of this course in the language, and sets the default locale.
     *
     * @param ratingReason the localized rating reason of this course
     * @param locale the locale of the language
     * @param defaultLocale the default locale
     */
    public void setRatingReason(String ratingReason, Locale locale,
        Locale defaultLocale);

    public void setRatingReasonCurrentLanguageId(String languageId);

    /**
     * Sets the localized rating reasons of this course from the map of locales and localized rating reasons.
     *
     * @param ratingReasonMap the locales and localized rating reasons of this course
     */
    public void setRatingReasonMap(Map<Locale, String> ratingReasonMap);

    /**
     * Sets the localized rating reasons of this course from the map of locales and localized rating reasons, and sets the default locale.
     *
     * @param ratingReasonMap the locales and localized rating reasons of this course
     * @param defaultLocale the default locale
     */
    public void setRatingReasonMap(Map<Locale, String> ratingReasonMap,
        Locale defaultLocale);

    /**
     * Returns the duration of this course.
     *
     * @return the duration of this course
     */
    @AutoEscape
    public String getDuration();

    /**
     * Sets the duration of this course.
     *
     * @param duration the duration of this course
     */
    public void setDuration(String duration);

    /**
     * Returns the duration standard of this course.
     *
     * @return the duration standard of this course
     */
    @AutoEscape
    public String getDurationStandard();

    /**
     * Sets the duration standard of this course.
     *
     * @param durationStandard the duration standard of this course
     */
    public void setDurationStandard(String durationStandard);

    /**
     * Returns the featured status of this course.
     *
     * @return the featured status of this course
     */
    public double getFeaturedStatus();

    /**
     * Sets the featured status of this course.
     *
     * @param featuredStatus the featured status of this course
     */
    public void setFeaturedStatus(double featuredStatus);

    /**
     * Returns the popular weight of this course.
     *
     * @return the popular weight of this course
     */
    public double getPopularWeight();

    /**
     * Sets the popular weight of this course.
     *
     * @param popularWeight the popular weight of this course
     */
    public void setPopularWeight(double popularWeight);

    /**
     * Returns the access count of this course.
     *
     * @return the access count of this course
     */
    public long getAccessCount();

    /**
     * Sets the access count of this course.
     *
     * @param accessCount the access count of this course
     */
    public void setAccessCount(long accessCount);

    /**
     * Returns the completed count of this course.
     *
     * @return the completed count of this course
     */
    public long getCompletedCount();

    /**
     * Sets the completed count of this course.
     *
     * @param completedCount the completed count of this course
     */
    public void setCompletedCount(long completedCount);

    /**
     * Returns the create date of this course.
     *
     * @return the create date of this course
     */
    public Date getCreateDate();

    /**
     * Sets the create date of this course.
     *
     * @param createDate the create date of this course
     */
    public void setCreateDate(Date createDate);

    /**
     * Returns the removed of this course.
     *
     * @return the removed of this course
     */
    public boolean getRemoved();

    /**
     * Returns <code>true</code> if this course is removed.
     *
     * @return <code>true</code> if this course is removed; <code>false</code> otherwise
     */
    public boolean isRemoved();

    /**
     * Sets whether this course is removed.
     *
     * @param removed the removed of this course
     */
    public void setRemoved(boolean removed);

    /**
     * Returns the removed date of this course.
     *
     * @return the removed date of this course
     */
    public Date getRemovedDate();

    /**
     * Sets the removed date of this course.
     *
     * @param removedDate the removed date of this course
     */
    public void setRemovedDate(Date removedDate);

    /**
     * Returns the supersedes course iri of this course.
     *
     * @return the supersedes course iri of this course
     */
    @AutoEscape
    public String getSupersedesCourseIri();

    /**
     * Sets the supersedes course iri of this course.
     *
     * @param supersedesCourseIri the supersedes course iri of this course
     */
    public void setSupersedesCourseIri(String supersedesCourseIri);

    /**
     * Returns the superseded by course iri of this course.
     *
     * @return the superseded by course iri of this course
     */
    @AutoEscape
    public String getSupersededByCourseIri();

    /**
     * Sets the superseded by course iri of this course.
     *
     * @param supersededByCourseIri the superseded by course iri of this course
     */
    public void setSupersededByCourseIri(String supersededByCourseIri);

    /**
     * Returns the release on date of this course.
     *
     * @return the release on date of this course
     */
    public Date getReleaseOnDate();

    /**
     * Sets the release on date of this course.
     *
     * @param releaseOnDate the release on date of this course
     */
    public void setReleaseOnDate(Date releaseOnDate);

    /**
     * Returns the accept until date of this course.
     *
     * @return the accept until date of this course
     */
    public Date getAcceptUntilDate();

    /**
     * Sets the accept until date of this course.
     *
     * @param acceptUntilDate the accept until date of this course
     */
    public void setAcceptUntilDate(Date acceptUntilDate);

    /**
     * Returns the version of this course.
     *
     * @return the version of this course
     */
    @AutoEscape
    public String getVersion();

    /**
     * Sets the version of this course.
     *
     * @param version the version of this course
     */
    public void setVersion(String version);

    /**
     * Returns the version date of this course.
     *
     * @return the version date of this course
     */
    public Date getVersionDate();

    /**
     * Sets the version date of this course.
     *
     * @param versionDate the version date of this course
     */
    public void setVersionDate(Date versionDate);

    /**
     * Returns the price of this course.
     *
     * @return the price of this course
     */
    public double getPrice();

    /**
     * Sets the price of this course.
     *
     * @param price the price of this course
     */
    public void setPrice(double price);

    /**
     * Returns the price unit of this course.
     *
     * @return the price unit of this course
     */
    @AutoEscape
    public String getPriceUnit();

    /**
     * Sets the price unit of this course.
     *
     * @param priceUnit the price unit of this course
     */
    public void setPriceUnit(String priceUnit);

    /**
     * Returns the price terms of this course.
     *
     * @return the price terms of this course
     */
    @AutoEscape
    public String getPriceTerms();

    /**
     * Sets the price terms of this course.
     *
     * @param priceTerms the price terms of this course
     */
    public void setPriceTerms(String priceTerms);

    /**
     * Returns the price expiration of this course.
     *
     * @return the price expiration of this course
     */
    @AutoEscape
    public String getPriceExpiration();

    /**
     * Sets the price expiration of this course.
     *
     * @param priceExpiration the price expiration of this course
     */
    public void setPriceExpiration(String priceExpiration);

    /**
     * Returns the one star rate count of this course.
     *
     * @return the one star rate count of this course
     */
    public long getOneStarRateCount();

    /**
     * Sets the one star rate count of this course.
     *
     * @param oneStarRateCount the one star rate count of this course
     */
    public void setOneStarRateCount(long oneStarRateCount);

    /**
     * Returns the two star rate count of this course.
     *
     * @return the two star rate count of this course
     */
    public long getTwoStarRateCount();

    /**
     * Sets the two star rate count of this course.
     *
     * @param twoStarRateCount the two star rate count of this course
     */
    public void setTwoStarRateCount(long twoStarRateCount);

    /**
     * Returns the three star rate count of this course.
     *
     * @return the three star rate count of this course
     */
    public long getThreeStarRateCount();

    /**
     * Sets the three star rate count of this course.
     *
     * @param threeStarRateCount the three star rate count of this course
     */
    public void setThreeStarRateCount(long threeStarRateCount);

    /**
     * Returns the four star rate count of this course.
     *
     * @return the four star rate count of this course
     */
    public long getFourStarRateCount();

    /**
     * Sets the four star rate count of this course.
     *
     * @param fourStarRateCount the four star rate count of this course
     */
    public void setFourStarRateCount(long fourStarRateCount);

    /**
     * Returns the five star rate count of this course.
     *
     * @return the five star rate count of this course
     */
    public long getFiveStarRateCount();

    /**
     * Sets the five star rate count of this course.
     *
     * @param fiveStarRateCount the five star rate count of this course
     */
    public void setFiveStarRateCount(long fiveStarRateCount);

    public boolean isNew();

    public void setNew(boolean n);

    public boolean isCachedModel();

    public void setCachedModel(boolean cachedModel);

    public boolean isEscapedModel();

    public Serializable getPrimaryKeyObj();

    public void setPrimaryKeyObj(Serializable primaryKeyObj);

    public ExpandoBridge getExpandoBridge();

    public void setExpandoBridgeAttributes(ServiceContext serviceContext);

    public Object clone();

    public int compareTo(Course course);

    public int hashCode();

    public CacheModel<Course> toCacheModel();

    public Course toEscapedModel();

    public String toString();

    public String toXmlString();
}
